"""
1、下面程序的功能是：给定一下学生姓名和成绩，输出所有不及格的学生姓名和成绩，请找出错误并修改验证
"""
for student in students:
    if student[1] < 60:
        name = student[0]
        score = student[1]
        print('姓名：',name,'\t','成绩：',score)

"""
2、下面程序的功能是：使用字典存储多个英文单词及其译文，输入英文，输出该单词的译文，请找出错误并修改验证
"""
number = int(input('请输入将要存入字典的英文单词个数：'))
word_explain = {}
for i in range(number):
    word,explain = input('请输入英文：'),input('请输入对应的译文：')
    word_explain[word] = explain
new_word = input('请输入要翻译的英文单词：')
if new_word in word_explain:
    print(word_explain[new_word])
else:
    print('no found')

"""
3.下面程序的功能是：将字符串'1a2b3c56ghjik'中的数字和字母分开并输出，然后将所有字母组合程字符串，转换成大写后输出，请将正确答案写在横线处
s = '1a2b3c56ghjik''
s = '1a2b3c56ghjik'
for c in s:
    if c >= '0' and c <= '9':
        print(c,end=' ')
print()
s1 = ''
for c in s:
    if c >= 'a' and c <= 'z':
        s1 += c
        print(c,end=' ')
print('\n',s1.upper())

4.下面程序的功能是：合并两个元组，将合并后元组中的元素按照字符串的大小升序排列，请将正确答案写在横线处
word1 = ('music',"piano","singing")
word2 = ("sports",'football','high_jump')
words = word1 + word2
print(words)
words_list = list(words)  # 把元素转成列表  因为列表有 sort排序方法
words_list.sort()
new_words = tuple(words_list)
print(new_words)

"""
5.表4-7为某班学生的成绩，请通过已经定义好的模板"{}同学，你的考试成绩是：语文{}，英语{}，数学{}，总成绩{}，特此通知！"输出姓名和成绩
姓名          语文          英语          数学
张三          90            87           78
李四          93            87           67
王五          88            90           95
"""
#定义列表保存姓名和成绩
std = [
    ['张三', 90, 87, 78],
    ['李四', 93, 87, 67],
    ['王五', 88, 90, 95]
]
#定义模板
mod = '{}同学，你的考试成绩是：语文{}，英语{}，数学{}，总成绩{}，特此通知！'
for st in std:
    cnt = 0
    for i in range(1,4):
        cnt += st[i]
    print(mod.format(st[0], st[1], st[2], st[3], cnt))

"""
6.编程实现，500个人围成一个圈，从1开始数，每数到3的倍数的人离开圈子，循环往复直到最后只剩一个人，输出剩下的这个人原来在圈中的位置（编号）
"""
joseph = []							#定义空列表
for i in range(1,501):              #循环500次
    joseph.append(i)
index = 0						#定义index，并赋为0
count = 0					    #定义count，并赋为0
while len(joseph) > 1:
    count += 1                  #count加1
    if count % 3 == 0:
        joseph.pop(index)
        index -= 1
    index += 1
    if index == len(joseph):
        index = 0
print(joseph)

"""
7.编程实现，使用列表保存学生的信息，包括姓名、性别、年龄，然后使用字典保存3个班级的学生信息，每个班级3个学生，以班级名为键，以存放学生信息的列表为值，最后根据输入的班级名输出该班级的学生信息
"""
#定义列表，每个列表保存3个学生信息
class1 = [
    ['张三丰', '男', 7],
    ['杨过', '男', 9],
    ['郭靖', '女', 8]
]
class2 = [
    ['刘备', '男', 10],
    ['孙尚香', '女', 8],
    ['诸葛亮', '男', 9]
]
class3 = [
    ['许明明', '女', 11],
    ['刘能', '男', 12],
    ['马三', '男', 10]
]
#定义字典，并将列表添加到字典中
grade = {}